package com.example.Mapper;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;

import com.example.pojo.Detail;
import com.example.pojo.Saleinfo;
import com.example.pojo.SalesreturnDetails;
import com.example.pojo.Salesreturns;
import com.example.pojo.Saleunstorage;

@Mapper
public interface SalesreturnsDao {
	
	/**
	 * 查询全部销售退货单
	 * @return
	 */
	public List<Salesreturns> selectSalesreturns(int pagenum,int pagesize);
	
	/**
	 * 根据id加载销售退货单
	 * @param id
	 * @return
	 */
	public Salesreturns loadSalesreturns(String id);
	
	/**
	 * 查询销售退货有多少条数据
	 * @return
	 */
	public Integer selectcount();
	
	/**
	 * 点击保存时新增
	 * @param pojo
	 */
	public void insertSalesreturns(Salesreturns pojo);
	
	/**
	 * 点击审核时的变化
	 * @param id
	 */
	public void auditingSalesreturns(String id);
	
	/**
	 * 点击反审核时的变化
	 * @param id
	 */
	public void antiauditSalesreturns(String id);
	
	/**
	 * 删除销售退货主表
	 * @param id
	 */
	public void deleteSalesreturns(String id);
	
	/**
	 * 删除销售退货详表
	 * @param id
	 */
	public void deletexiang(String id);
	
	/**
	 * 修改表的删除状态
	 * @param id
	 */
	public void updatestatus(String id);
	
	/**
	 * 保存祥表
	 * @param pojo
	 */
	public void cong(SalesreturnDetails pojo);
	
	/**
	 * 根据时间查询最大单号
	 * @param date
	 * @return
	 */
	public String selectdate(String date);
	
	/**
	 * 查询已审核的出库单
	 * @return
	 */
	public List<Saleunstorage> selectck();
	
	/**
	 * 加载出库主表
	 * @param ckid
	 * @return
	 */
	public Saleunstorage loadck(String ckid);
	
	/**
	 * 查询出库祥表
	 * @param ckid
	 * @return
	 */
	public List<Saleinfo> selectckxiang(String ckid);
	
	/**
	 * 根据出库的来源单号查询销售订单单号
	 * @param ckid
	 * @return
	 */
	public String selectckly(String ckid);
	
	/**
	 * 根据销售订单单号修改销售订单状态
	 * @param xsddid
	 */
	public void updatexsddzhu(String xsddid);
	
	/**
	 * 根据销售订单单号修改销售从表的未出库数量
	 * @param xsddid
	 * @param wlid
	 * @param shul
	 */
	public void updatexsddxiang(Integer shul,String xsddid,String wlid);
	
	/**
	 * 新增一条入库记录
	 * @param pojo
	 */
	public void insertchuruk(Detail pojo);
	
	/**
	 * 修改仓库总账表的数量
	 * @param ckid
	 * @param wlid
	 */
	public void updatecksl(Integer wlsl,String ckid,String wlid);
	
	/**
	 * 修改客户的部分信息
	 * @param khid
	 */
	public void updatekh(Double qmysk,Double syed,String zjthrq,String khid);
	
	/**
	 * 反审核删除出入库记录
	 * @param crkid
	 */
	public void deletechuruk(String id);
	
	/**
	 * 反审核修改仓库总账表的数量
	 * @param ckid
	 * @param wlid
	 */
	public void fupdatecksl(Integer wlsl,String ckid,String wlid);
	
	/**
	 * 反审核 查询已审核的最近的退货日期
	 * @return
	 */
	public String selectxsthdate();
	
	/**
	 * 反审核修改客户的部分信息
	 * @param khid
	 */
	public void fupdatekh(Double qmysk,Double syed,String zjthrq,String khid);
	
}